package com.lzh.others;

/**
 * @Description: 标准compareTo
 * @Author: LiuZiHao
 * @Date: 2022/7/15 10:30
 */
public class CompareToDemo {
    public static void main(String[] args) {
        System.out.println("1.返回参与比较的前后两个字符串的asc码的差值，如果两个字符串首字母不同，则该方法返回首字母的asc码的差值");
        String a1 = "1444";
        String a2 = "3444";
        System.out.println(a1.compareTo(a2));
        System.out.println("2.即参与比较的两个字符串如果首字符相同，则比较下一个字符，直到有不同的为止，返回该不同的字符的asc码差值");
        String a3 = "1144";
        String a4 = "1344";
        System.out.println(a3.compareTo(a4));
        System.out.println("3.如果两个字符串不一样长，可以参与比较的字符又完全一样，则返回两个字符串的长度差值");
        String a5 = "abc";
        String a6 = "abcd";
        System.out.println(a5.compareTo(a6));
        //4.返回为正数表示a1>a2, 返回为负数表示a1<a2, 返回为0表示a1==a2;
        //5.数字类型不能用compareTo，int跟int的比较不能用compareTo方法,直接用大于(>) 小于(<) 或者 等于(==) 不等于(!=)来比较即可
        System.out.println("6.compareToIgnoreCase忽略大小写");
        //其大小写差异已通过对每个字符调用 Character.toLowerCase(Character.toUpperCase(character)) 得以消除。
        //注意，此方法不 考虑语言环境，因此可能在某些特定的语言环境中产生不理想的排序。java.text 包提供 Collators 来完成语言环境敏感的排序。
        String a7 = "ABC";
        String a8 = "abc";
        System.out.println(a7.compareToIgnoreCase(a8));
    }
}
